package com.exe.rege.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.exe.rege.dto.DishDto;
import com.exe.rege.entity.DishEntity;

import java.util.List;

public interface DishService extends IService<DishEntity> {
    /**
    * 新增菜品，同时插入菜品对应的口味数据
    * 需要操作两张表：dish和dish_flavor
    * */
    public void saveWithFlavor(DishDto dishDto);


    /**
     * 根据id查询菜品信息和对应的口味信息
     * @param id
     * @return
     */
    public DishDto getByIdWithFlavor(Long id);

    /**
     * 更新菜品表和口味表
     * @param dishDto
     * @return
     */
    public void updateWithFlavor(DishDto dishDto);

    /**
     * 分页查询，注意有菜品基本信息，还要把分类id转化为分类名称，加上图片展示
     * @return
     */
    public Page<DishDto> getPage(int page, int pageSize, String name);

    /**
     * 删除菜品时，与套餐有关联的不能直接删
     * @param ids
     * @return
     */
    public void deleteByIds(String ids);

    /**
     * 更新菜品状态
     * @param status
     * @param ids
     */
    public void updateStatus(Integer status, String ids);
}
